
#import <UIKit/UIKit.h>
#import "WeatherDefines.h"

@interface AnimatedGifQueueObject : NSObject
{
    UIImageView *uiv;
    NSURL *url;
}

@property (nonatomic, retain) UIImageView *uiv;
@property (nonatomic, retain) NSURL *url;

@end

@interface LoadingView : UIView{

	NSData *GIF_pointer;
	NSData *GIF_buffer;
	NSMutableData *GIF_screen;
	NSMutableData *GIF_global;
	NSMutableData *GIF_frameHeader;
	
	NSMutableArray *GIF_delays;
	NSMutableArray *GIF_framesData;
    
    NSMutableArray *imageQueue;
	bool busyDecoding;
	
	int GIF_sorted;
	int GIF_colorS;
	int GIF_colorC;
	int GIF_colorF;
	int animatedGifDelay;
	
	int dataPointer;

    UIView *viewBgGray;
    UIImageView *_indicator;
    NSString* kindImage;
}
@property (nonatomic, retain) UIImageView* indicator;
@property (nonatomic, retain) UIView* viewBgGray;
@property (nonatomic, retain) NSString* kindImage;

- (void) addToQueue: (AnimatedGifQueueObject *) agqo;
- (UIImageView*) getAnimationForGifAtUrl:(NSString*) _loadingImage;
- (void) decodeGIF:(NSData *)GIF_Data;
- (void) GIFReadExtensions;
- (void) GIFReadDescriptor;
- (bool) GIFGetBytes:(int)length;
- (bool) GIFSkipBytes: (int) length;
- (NSMutableData*) getFrameAsDataAtIndex:(int)index;
- (UIImage*) getFrameAsImageAtIndex:(int)index;
- (UIImageView*) getAnimation;
- (void)loadingIndicator:(NSString*) _loadingImage;
-(void)asynchronousLoading;
@end
